Joomla! plugins enable you to execute code in response to certain events, either Joomla! core events or custom events that are triggered from your own code. This is a powerful way of extending the basic Joomla! functionality.
Basically there are the following types of plugins:
- authentication
- content
- editors
- editors-xtd
- search
- system
- user
- xmlrpc
Plug-ins in Joomla! can respond to many different kinds of events during a request. Listing of when these events occur, grouped by plug-in type:
System
onAfterInitialise – after the framework loads, but before routing and output
onAfterRoute – after routing, but before output
onAfterDispatch – after the Joomla! application is started
onAfterRender – after all output is processed
onGetWebServices – when the XML-RPC function requests a list of valid
function calls
onLoginFailure – when a login attempt fails
Search
onSearch – when a search is performed
onSearchAreas – when the search component requests a list of valid search areas
Authentication
onAuthenticate – when a user initially attempts to authenticate, provides a method for authentication
User
onLoginUser – after a user initially authenticates, but before they are fully logged in; all functions must return true ?tofinishauthenticationto finishauthenticationfinish authentication
onLogoutUser – when a user attempts to logout; all functions must return true
to logout
onBeforeStoreUser – just before a user is stored in the database
onAfterStoreUser – after a user is stored in the database
onBeforeDeleteUser – just before a user is deleted from the system
onAfterDeleteUser – just after a user is deleted from the system
Editor-xtd
onCustomEditorButton – when custom editor buttons are loaded; this allows the addition of buttons
Editor
onInit – when the editor is initialized
onDisplay – when the editor is ready to be displayed
onGetContent – when the contents of the editor are requested
onSetContent – when the contents of the editor are populated
onSave – when the contents of the editor are saved
onGetInsertMethod – just before the editor is output
Content
onPrepareContent – before any output occurs
onAfterDisplayTitle – just after the article title is displayed
onBeforeDisplayContent – just before content is output; this returns the output to be displayed
onAfterDisplayContent – just after content is output; this returns the output to
be displayed